package com.pbase.data.http.listener;

import com.pbase.data.http.DataState;

import org.json.JSONArray;
import org.json.JSONObject;


/**
 * 业务数据解析
 * 根据不同项目的接口结构继承 重写analyJsonObject 解析
 * 提供OnDataRequestListenerWithProgress使用
 */
public class BaseResponseResult {

    /**
     * 原始数据
     */
    protected JSONObject jsonObject;
    /**
     * 抽取最终数据
     */
    protected JSONObject data;
    /**
     * 抽取最终数据
     */
    protected JSONArray dataArry;
    /**
     * 接口返回的描述
     */
    protected String message;
    /**
     * 接口返回的状态码
     */
    protected int code = DataState.ERR_NETWORK;
    protected boolean success = false;

    public void analyJsonObject(JSONObject jsonObject) {

    }

    //若项目中无直接返回jsonarray此处可不写
    public void analyJsonObject(JSONArray jsonArray) {

    }

    /**
     * 根据平台返回的请求状态码判断
     *
     * @return
     */
    public boolean isSuccess() {
        return  DataState.REQUESE_SUCCESS== code;
    }

    public JSONObject getJsonObject() {
        return jsonObject;
    }

    public String getMessage() {
        return message;
    }

    public JSONObject getData() {
        return data;
    }

    public JSONArray getDataArry() {
        return dataArry;
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }
}
